<?php

/**
 * @author Paweł Napieracz
 * @version 1.0
 */
class Modul_Front_Uzytkownik_LogowaniePanel extends Modul_Front_Abstract {

    public function inicjalizuj() {
        $this->tytul = 'Logowanie do panelu';

        $formKontakt = new Form_Logowanie();
        $this->daneTPL['form'] = Form_Logowanie::generuj('/cms/logowanie/akcja,zaloguj.html');

        /* Jeżeli użytkownik jest zalogowany to przekierowuje na główną panelu */
        if ($this->uzytkownik !== false && !isset($this->param['akcja'])) {
            if (in_array('cms_dostep', $this->uzytkownik['uprawienia']))
                $this->zakoncz('/cms');
        }

        /* Odczytywanie błędów z url'a */
        if (isset($this->param['akcja']) &&
                $this->param['akcja'] == 'blad') {
            if (isset($this->param['info'])) {
                switch ($this->param['info']) {
                    case '0':
                        $bledy[] = 'Musisz się zalogować, aby korzystać z panelu!';
                        break;
                    case '1':
                        $bledy[] = 'Brak uprawnień do panelu administracyjnego!';
                        break;
                    case '2':
                        $bledy[] = 'Konto zostało zawieszone!';
                        break;
                    case '3':
                        $bledy[] = 'Nie masz dostępu do tego modułu.';
                        break;
                    default:
                        $bledy[] = 'Nieznany błąd autoryzacji. 
                            Upewnij się, że masz uprawnienia do przeglądania tej strony';
                        break;
                }
                $this->daneTPL['bledy'] = $bledy;
            }
        }

        if (isset($this->param['akcja']) &&
                $this->param['akcja'] == 'zaloguj') {
            $this->zaloguj();
        } else if (isset($this->param['akcja']) &&
                $this->param['akcja'] == 'wyloguj') {
            Helper_Uzytkownik::wyloguj();
            $this->zakoncz('/cms/logowanie');
        }
    }

    private function zaloguj() {
        $logowanie = Helper_Uzytkownik::zaloguj($_POST['login'], $_POST['haslo']);
        if ($logowanie === false) {
            $bledy[] = 'Login i hasło są nieprawidłowe!';
        } elseif ($logowanie == 0) {
            $bledy[] = 'Konto zostało usunięte!';
        } elseif ($logowanie == 2) {
            $bledy[] = 'Konto nie zostalo jeszcze aktywowane!';
        }elseif ($logowanie == 3) {
            $bledy[] = 'Konto zostało zablokowane. Skontaktuj się z administratorem';
        }else {
            $this->zakoncz('/cms');
        }
        $this->daneTPL['bledy'] = $bledy;
    }

}

?>
